<html>
	<head>
		<title>BlackStar Monitor&amp;Profile System</title>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
		<link rel="stylesheet" type="text/css"
			href="/static/extjs/resources/css/ext-all.css" rel="stylesheet" />
		<link rel="stylesheet" type="text/css" href="/static/css/default.css"
			rel="stylesheet" />		
	</head>
	<body>
		<h1>BlackStar结构</h1>
		<img src="image/architecture.jpg"/>
		<h3>&nbsp;&nbsp;&nbsp;1.MonitorAgent是一个独立运行的程序，其自动识别同服务器上的业务JVM</h3>
		<h3>&nbsp;&nbsp;&nbsp;2.PerfromanceAgent以JavaAgent的方式与业务JVM一起运行，PerformanceAgent将收集的性能数据记录到文件中</h3>
    	<h3>&nbsp;&nbsp;&nbsp;3.PerformanceStat是运行在MonitorAgent之上的一个插件，每天定时统计PerformanceAgent产生的性能数据</h3>
   		<h3>&nbsp;&nbsp;&nbsp;4.JVMMonitor是运行在MonitorAgent之上的一个插件，每分钟采集业务JVM的JVM数据</h3>
    	<h3>&nbsp;&nbsp;&nbsp;5.JMX Proxy提供了对本机所有JVM的JMX代理功能，JConsole可以通过该Proxy访问业务JVM的JMX服务</h3>
    	<h3>&nbsp;&nbsp;&nbsp;6.UI提供了对相应功能的界面，包括性能统计结果、JVM定期采集结果、JVM实时采集结果等</h3>
    	<h2>这个结构有两大主要缺陷：</h2>
    	<h3>&nbsp;&nbsp;&nbsp;1.采集的数据分散存储，随着业务服务器数量的增长管理将变地更加困难，后续会使用数据中心化的方案，使用独立的数据存储应用存储所有采集的数据</h3>
    	<h3>&nbsp;&nbsp;&nbsp;2.接入点分散，开发PC直接接入生产服务器，对统一的权限控制不利，此外生产服务器必须对外提供访问接口，将带来潜在的安全隐患，后续会使用统一Portal应用管理所有MonitorAgent</h3>
	</body>
</html>